]> dgit.raspbian.org Git - gnome-shell.git/commit
extensionSystem: Fix extension enabling/disabling order
authorKyrill Zorin <zorink@zoringroup.com>
Mon, 11 Aug 2025 22:42:36 +0000 (23:42 +0100)
committerFlorian Müllner <fmuellner@gnome.org>
Sat, 13 Sep 2025 16:57:40 +0000 (18:57 +0200)
commitaf703f72800f59ca252ef1c200de93ff2652ab64
treefda4c287133e3aea075130fda42d23ae2b85d4a1
parentc9d23d7b27990fb9c26c132644b1600ea132b0a7
extensionSystem: Fix extension enabling/disabling order

Move disabling of unneeded extensions before enabling new ones
in _onEnabledExtensionsChanged(). Previously, conflicting
extensions could simultaneously be active briefly, leading to
unclean states, memory leaks, freezes, or crashes.

The old logic also caused unnecessary disable/enable cycles
for newly requested extensions, wasting resources. Running
the disable step first prevents these issues.

Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/3835>
(cherry picked from commit d3390d1afecbc7829b1618b99995f48eddb90f4a)
js/ui/extensionSystem.js